perm filename WINGED.FAI[GEO,BGB] blob
sn#001319 filedate 1972-10-28 generic text, type T, neo UTF8
00100 TITLE WINGED
00200
00300 ; ALTERNATE PDP-10 MNEMONICS.
00400 OPDEF DIP [HRLM]
00500 OPDEF DAP [HRRM]
00600 OPDEF CAR [HLRZ]
00700 OPDEF CDR [HRRZ]
00800 OPDEF NIP [HLRE]
00900 OPDEF NAP [HRRE]
01000 OPDEF RIP [HLLE] ; REAL FROM INSTRUCTION PART.
01100 OPDEF GO [JRST]
01200 OPDEF LAC [MOVE]
01300 OPDEF DAC [MOVEM]
01400
01500 ;SAIL LIKE SUBROUTINE LINKAGE.
01600 P←17
01700 DEFINE ARG1<-1(17)>
01800 DEFINE ARG2<-2(17)>
00100 ;FETCH LINK FROM NODE.
00200 DEFINE SUBR (NAME,XXX,I){
00300 INTERN NAME↔NAME: LAC 1,ARG1↔XXX 1,0 I(1)
00400 SUB P,[XWD 2,2]↔GO @2(P)}
00500
00600 SUBR(PART ,NIP,-3) SUBR(COPART,NAP,-3)
00700 SUBR(EXTENT,CAR,-2) SUBR(LOCOR ,CDR,-2)
00800 SUBR(PNAME ,CAR,-1) SUBR(DISK ,CDR,-1)
00900 SUBR(TYPE ,CAR,+0) SUBR(SERIAL,CDR,+0)
01000 SUBR(NFACE ,CAR,+1) SUBR(PFACE ,CDR,+1)
01100 SUBR(NED ,CAR,+2) SUBR(PED ,CDR,+2)
01200 SUBR(NVT ,CAR,+3) SUBR(PVT ,CDR,+3)
01300 SUBR(NCW ,CAR,+4) SUBR(PCW ,CDR,+4)
01400 SUBR(NCCW ,CAR,+5) SUBR(PCCW ,CDR,+5)
01500 SUBR(FCNT ,CAR,+4) SUBR(VCNT ,CDR,+4)
01600 SUBR(ECNT ,CAR,+5) SUBR(PCNT ,CDR,+5)
01700 SUBR(NBODY ,CAR,+6) SUBR(PBODY ,CDR,+6)
01800 SUBR(NUF ,CAR,+7) SUBR(PUF ,CDR,+7)
01900 SUBR(NCNT ,NIP,+2) SUBR(TJOINT,CDR,+1)
02000 SUBR(X1DC ,NIP,-3) SUBR(Y1DC ,NAP,-3)
02100 SUBR(X2DC ,NIP,-2) SUBR(Y2DC ,NAP,-2)
02200 SUBR(XDC ,RIP,+1) SUBR(YDC ,RIP,+2)
02300 SUBR(ALT,CAR,+6);
02400
02500 ;FETCH DATA FROM NODE.
02600
02700 SUBR(IX,LAC,+0) SUBR(IY,LAC,+1) SUBR(IZ,LAC,+2)
02800 SUBR(JX,LAC,+3) SUBR(JY,LAC,+4) SUBR(JZ,LAC,+5)
02900 SUBR(KX,LAC,+6) SUBR(KY,LAC,+7) SUBR(KZ,LAC,+8)
00100 ;STORE LINK INTO NODE.
00200 DEFINE SUBR(NAME,XXX,I){
00300 INTERN NAME↔NAME: LAC 1,ARG1↔LAC ARG2↔XXX 0 I(1)
00400 SUB P,[XWD 3,3]↔GO @3(P)}
00500
00600 SUBR(PART. ,DIP,-3) SUBR(COPAR.,DAP,-3)
00700 SUBR(EXTEN.,DIP,-2) SUBR(LOCOR.,DAP,-2)
00800 SUBR(PNAME.,DIP,-1) SUBR(DISK. ,DAP,-1)
00900 SUBR(TYPE. ,DIP,+0) SUBR(SERIA.,DAP,+0)
01000
01100 SUBR(NFACE.,DIP,+1) SUBR(PFACE.,DAP,+1)
01200 SUBR(NED. ,DIP,+2) SUBR(PED. ,DAP,+2)
01300 SUBR(NVT. ,DIP,+3) SUBR(PVT. ,DAP,+3)
01400
01500 SUBR(NCW.. ,DIP,+4) SUBR(PCW.. ,DAP,+4)
01600 SUBR(NCCW..,DIP,+5) SUBR(PCCW..,DAP,+5)
01700
01800 SUBR(FCNT. ,DIP,+4) SUBR(VCNT. ,DAP,+4)
01900 SUBR(ECNT. ,DIP,+5) SUBR(PCNT. ,DAP,+5)
02000 SUBR(NBODY.,DIP,+6) SUBR(PBODY.,DAP,+6)
02100 SUBR(NUF. ,DIP,+7) SUBR(PUF. ,DAP,+7)
02200 SUBR(NCNT. ,DIP,+2) SUBR(TJOIN.,DAP,+1)
02300 SUBR(ALT.,DIP,+6);
02400
02500 END